package com.scuec.groupfive.service;

import com.scuec.groupfive.entity.*;

import java.util.List;

public interface RollManagementService {
    /**
     * 根据年份和试卷类型获取题目
     * @param examYear 年份
     * @param typeId 试卷类型ID
     * @return 按题目类型排序的题目列表
     */
    List<QuestionInfo> getQuestionsByYearAndType(Integer examYear, Integer typeId);

    /**
     * 更新题目基本信息
     * @param questionInfo 题目信息
     * @return 更新后的题目信息
     */
    QuestionInfo updateQuestion(QuestionInfo questionInfo);

    /**
     * 更新选择题答案
     * @param choiceQuestion 选择题答案信息
     * @return 更新后的选择题答案
     */
    ChoiceQuestion updateChoiceAnswer(ChoiceQuestion choiceQuestion);

    /**
     * 更新填空题答案
     * @param fillBlankQuestion 填空题答案信息
     * @return 更新后的填空题答案
     */
    FillBlankQuestion updateFillBlankAnswer(FillBlankQuestion fillBlankQuestion);

    /**
     * 更新主观题答案
     * @param subjectiveQuestion 主观题答案信息
     * @return 更新后的主观题答案
     */
    SubjectiveQuestion updateSubjectiveAnswer(SubjectiveQuestion subjectiveQuestion);
}